package jiejie;

import java.util.Arrays;
import java.util.Scanner;

public class unit1_6_3 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n=sc.nextInt();
        int m=sc.nextInt();
        sc.nextLine();
        int[] nums = new int[n];
        for(int i=0; i<n; i++){
            nums[i]=sc.nextInt();
        }
        getRes(n,m,nums);
    }

    /**
     * 使用二分查找；将复杂度从n*4变为了n*3logn
     * @param n
     * @param m
     * @param nums
     */
    public static void getRes(int n, int m, int[] nums){
        Arrays.sort(nums);
        boolean res=false;
        for(int i=0; i<n; i++)
            for(int j=0; j<n; j++)
                for(int k=0; k<n; k++){
                    if(erfen(nums,m-nums[i]-nums[j]-nums[k]))
                        res=true;
                }
        if(res)
            System.out.println("yes");
        else
            System.out.println("no");
    }
    public static boolean erfen(int[] nums, int target){
        Arrays.sort(nums);
        int left=0;
        int right=nums.length-1;
        while(left<=right){
            int mid = (left+right)/2;
            if(nums[mid]==target){
                return true;
            }
            else if(nums[mid]>target){
                right=mid-1;
            }
            else{
                left=mid+1;
            }
        }
        return false;
    }
}
